1. Field of the Invention
The invention relates generally to telecommunications. More specifically, the invention relates to echo cancellation in data, voice and other communication systems.
2. Description of the Related Art
The phenomenon ofxe2x80x9cechoxe2x80x9d in telephone and voice carrier systems results from leakage back to the source of electrical signals as they approach their destination. Such echo is due to impedance mismatches between source and destination and/or reflections of the signals from components such as speakers. One classic occurrence of such echo is the xe2x80x9cline echoxe2x80x9d experienced in the conversion of four-wire systems (public networks) to two-wire systems (such as telephone wiring in a home).
For example, as shown in FIG. 1, two terminals 110 and 120, such as telephones, which subsist on two-wire networks connect to each other over a four-wire network 130. To facilitate the needed conversion, an analog device known as a hybrid is inserted between a four-wire network and the two-wire network. Thus, a hybrid 115 interconnects terminal 110 with the four-wire network 130 and a hybrid 125 interconnects terminal 120 with the four-wire network 130. Typically, hybrids 115 and 125 will consist of a pair of induction coupled transformers that a duplex signal into two simplex signals. Owing to the leakage current in each hybrid, a part of the signal energy that is transmitted will b reflected back to the source. Thus, terminal 110 would hear an echo of its own outgoing transmission (such as a voice echo) reflecting from its interception at hybrid 125 (which is attached to terminal 115).
To improve the quality of such transmissions, line echo cancellers are usually placed in the network. As shown in FIG. 2, a Line Echo Canceller (LEC) 200 is placed as close as possible to the source of the echo (in terms of the echo received by terminal 210) proximate to a hybrid 225. Terminal 210 sends a signal that is received as y(n), and serves as one input to LEC 200. A composite signal y(n) entering the network as a result of a terminal 220 (and its hybrid 225) is the sum of an echo xe2x80x9cr(n)xe2x80x9d of the x(n) signal and the transmitted signal t(n) from terminal 220. In a typical line echo canceller, such as LEC 200, an adaptive transversal FIR (Finite Impulse Response) filter is used to predict the echo based on previous samples. LEC 200, for instance, outputs an estimated echo signal r_est(n).
The filter is optimized by measuring and feeding back an error signal e(n)=y(n)-r_est(n). Based upon the goal of reducing the mean-squared error, the filter""s coefficients are updated. One such updating scheme is known as LMS (Least Mean Square) which can be represented in discrete terms by:                     a        k            ⁡              (                  i          +          1                )              =                            a          k                ⁡                  (          i          )                    +              2        ⁢        β        *                  1          M                ⁢                              ∑                          m              =              0                                      M              -              1                                ⁢                      xe2x80x83                    ⁢                                    e              ⁡                              (                                                      i                    -                                    ,                                )                                      *                          y              ⁡                              (                                  i                  -                  m                  -                  k                                )                                                          ,
where xe2x80x9cMxe2x80x9d is the number of discrete samples, xe2x80x9cakxe2x80x9d is a coefficient of the filter.
One critical coefficient in the above formula is the Beta (xcex2). The Beta is the loop gain factor that determines the convergence performance over time of the adaptive filter. The larger the Beta factor, in general, the more rapidly will the performance of the filter converge toward an optimum cancellation result. However, if the Beta is chosen too large then the filter performance may begin diverging at a certain point (FIG. 3(a)). A lower Beta may not converge until after a long time, as shown in FIG. 3(b), but will have less asymptotic error and thus, can be prevented from diverging off. Additionally, an input signal with a low power may cause slower convergence. In such a case the Beta factor can be normalized by the average power of the input signal converting the LMS algorithm into NLMS (Normalized Least Mean Square). Even with NLMS, the choice of Beta is difficult to resolve.
Thus, there is a need for a Beta discovery scheme that permits an adaptive filter to most optimally converge without risk of divergence or slowing due to low power in signals.
One other issue in the design of the filter is in choosing the number of taps used. When calculating the estimate of the echo signal, the filter coefficient at each tap is multiplied by the reference signal when the reference signal passes the tap. These products are accumulated together and represent the estimated echo. Therefore, the greater the number of taps, the more multiply-and-accumulate instructions need to be processed or implemented. This increases the cost and decreases the speed of the filter in estimating the echo and, consequently, in canceling
Additionally, there is a need for determining the most optimal number of filter taps so that excess computation is reduced.
What is disclosed is a method, apparatus and system employing such for adapting the Beta factor in a echo cancellation adaptive filter by using echo loss return enhancement (ERLE) as a metric to determine how large or small the Beta should be set to. In general, a high ERLE indicates that a low Beta factor should be used, while a low ERLE indicates that a high Beta factor should be used.
Also disclosed is a method and apparatus for determining the optimum number of filter taps used in an adaptive filter by dividing a filter array into blocks of taps, finding for each tap the sum of squares of the coefficients therein and then comparing the sum to an average block energy. Based on this comparison, a block is deemed to either contribute significantly to the operation of the filter or not. Starting with the tail end block of the array, the optimum filter order is found by determining when the first contributing block is found.